#define _CRT_SECURE_NO_WARNINGS 1

//#include <stdio.h>
//
//struct stu
//{
//	char name[20];
//	int age;
//	char id[15];
//	float weight;
//}s1,s2;
//
//int main()
//{
//	struct stu s3 = { "zhangsan", 20, "20220412050", 65.5f };
//	struct stu s4 = { .age = 18, .weight = 88.9, .name = "lisi", .id = "20220315080" };
//	struct stu* p4 = &s4;
//	printf("%s %d %s %f\n", s3.name, s3.age, s3.id, s3.weight);
//	printf("%s %d %s %f\n", p4->name, p4->age, p4->id, p4->weight);
//	return 0;
//}
//struct stu
//{
//	int num;
//	char name[10];
//	int age;
//};
//
//void fun(struct stu *p)
//{
//	printf("%s\n", (*p).name);
//	return;
//}
//
//int main()
//{
//	struct stu students[3] = { { 9801, "zhang", 20 },
//	{ 9802, "wang", 19 },
//	{ 9803, "zhao", 18 } };
//	fun(students + 1);
//	return 0;
//}
#include <stdio.h>

int my_atoi(char* p)
{
	int flag = 1;
	if (*p == '-')
	{
		flag = -1;
		p++;
	}
	else if (*p == '+')
	{
		flag = 1;
		p++;
	}
	int sum = 0;
	int n = 10;
	while (*p >= '0' && *p <= '9')
	{
		sum = sum * n + ((*p) - '0');
		p++;
	}
	return flag * sum;
}

int main()
{
	char arr[] = "-1234a56";
	gets(arr);
	int n = my_atoi(arr);
	printf("%d\n", n);
	return 0;
}


//int main()
//{
//	printf("%d\n", '9' - '0');
//	return 0;
//}